|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑 0 \/ w; b+ i/ \6 B
' b( H6 |& s1 O第二个问题,点击breakpoints,然后如图。
& ~' ^5 B+ E' G% G( r2 o8 |+ a; D& l+ g: g
设置断点,运行游戏(RUN)。" P/ ^1 |' n9 P. k# i' \6 _# W
找敌人挨打,结果中断到这里。C11115.
' @. g( `1 S4 r ~0 H5 Y E
; b8 O, x* Y! g9 K9 P, t点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).
: m" l Q1 i/ D# d! N9 {( [分别设为C11105和C11125。
4 t; \) G# L6 o4 B, {! X2 _确定OK,然后如下图。
% T8 E0 f4 V3 x" _1 `
9 V3 Y# p' _8 i& l) s, F9 m+ N# V观察C11115附近,发现前面有条减法指令:
* V/ ^+ G' U; y4 ?3 f$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC
2 m: f5 t# h6 w3 b这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。7 ^2 X' Y5 U+ E- M( H
用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。
7 e! u* @6 x) J) n2 u6 t1 `' H6 n
, |' K# S8 K% E. {4 v& Z) K3 k8 C用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。
# A/ g0 J% _4 p: t$ v将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|