|
|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑
. N" i4 a k1 e
- D% p* M6 ?0 ]# M( s7 B第二个问题,点击breakpoints,然后如图。( h5 Q7 ]0 o. b6 u+ F
- |% Q+ e' E3 V$ y r: q1 `7 K- |4 c设置断点,运行游戏(RUN)。! _- y. d4 P: `4 Z* z
找敌人挨打,结果中断到这里。C11115.
0 h" [, y3 V6 m, L) i1 a5 j) u
5 W/ ^) ^2 _8 I: D& D6 j- s点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres)." ^: }4 `# y# g- @( X6 q& `
分别设为C11105和C11125。( H/ G, m* ?% I
确定OK,然后如下图。
! O& ~! w: Z! x4 \9 X+ G' w
+ I+ n: t/ @; \0 y. F: g观察C11115附近,发现前面有条减法指令:
$ ~9 v7 c, ^! {2 Q: N. }- Z$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC ; A5 A' P* S5 L: R
这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。
1 d1 Q$ l3 [# S用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。
( f$ u, A' T6 ]1 X8 G
) B( M- w2 y. L' O- Q) Z4 l用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。
* @% q$ N4 k' p将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|