|
|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑
0 V+ t# A1 f3 B+ N' E J" W
/ K ]% ? {' Q) h6 p; z第二个问题,点击breakpoints,然后如图。
; r- F9 o7 {5 O# S2 R! v* g6 l
设置断点,运行游戏(RUN)。% v# g* H6 J7 C
找敌人挨打,结果中断到这里。C11115.7 i- v) }; ]% G
$ U. e4 {1 Q3 R z* w0 \
点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).
7 @: p" q- Q/ z分别设为C11105和C11125。9 T2 H0 _7 P) U1 u& b' I/ n
确定OK,然后如下图。+ p( x3 w) V# h: Z. j7 y0 [4 ]
8 x p0 F' B/ w4 q5 n2 U* K5 [
观察C11115附近,发现前面有条减法指令:
+ Y% @1 N% U! d1 C$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC 8 p& D3 z/ y& _% O- n
这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。
1 w: `# Y, v9 `( v# l3 J/ a8 }" A用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。# }8 v: q- [# n2 ?$ x9 E
- v) ?. j$ x; q1 t5 ~用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。
% b+ g& c& q3 G6 Y# f将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|