|
|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑
( a4 ~% u7 {% |- f2 B& U2 ^# o: ]: t, [) @/ {+ X6 H
第二个问题,点击breakpoints,然后如图。" V n4 q" d. {6 v
" j8 T* f; M5 n* V3 a
设置断点,运行游戏(RUN)。
+ @( M9 {6 f) d) V$ {找敌人挨打,结果中断到这里。C11115.
! r% ]4 c. \8 n8 M+ y2 L' v1 B7 ?- C1 { Y
点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).
0 R; u: j+ ^6 i; [分别设为C11105和C11125。
- u* \0 P P: {# O4 C" D确定OK,然后如下图。
' F/ f! a& x+ K# C
8 p$ H! }9 l- A$ R: V* k观察C11115附近,发现前面有条减法指令:
. M7 V1 R3 s, I+ q, o% }! ?8 n- r$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC
+ E' b1 p" v+ }, I4 u [, e这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。
3 b6 L @2 k! [. t3 V用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。. b ^; M) o0 G4 E/ [* U$ j
- _" D8 T! J8 m$ {) N2 d; ^% G用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。9 x# s6 I9 K. W- N5 O @1 O
将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|