|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑
; L4 X! z5 L5 a& W' v# J9 _# V2 J. ~$ o0 S- Z2 K5 M& c/ u9 |
第二个问题,点击breakpoints,然后如图。0 s$ A8 b' h' j, H
" d% y3 U/ ~/ e0 {, J+ @设置断点,运行游戏(RUN)。
$ R1 \7 k2 {. m0 W' N找敌人挨打,结果中断到这里。C11115.
* a! V. {9 G' U7 ^+ }' c+ _2 y1 Z; j$ A5 y
点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).# h& `6 F: I6 J5 l
分别设为C11105和C11125。
. C) h& D! @% ]确定OK,然后如下图。' e# g' n5 C+ \. G) e! Y D
6 U2 L. z/ |6 P观察C11115附近,发现前面有条减法指令: `) v% q* T0 Q+ n% E" C
$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC
4 U- }: d! ~/ _$ u `. T: r这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。& a- n* i% H9 |
用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。
4 N r% l% d0 @' l: Z2 w& P* j% u! R& z
用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。
6 d+ U$ j% c) T4 w2 \6 I, M; J将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|