设为首页收藏本站

 找回密码
 立即注册
搜索
查看: 1381|回复: 7

[求助] FC按键得到某效果的修改问题

[复制链接]

签到天数: 1229 天

[LV.10]以坛为家III

发表于 2010-11-16 22:40:28 | 显示全部楼层 |阅读模式
今天我又看了shinwa大哥的《FC游戏按键得到某效果的修改教程》的教程,看完后也试着改一下,但很遗憾失败了,对我打击非常大,有点想不开的感觉。
1 s5 _# I- ?: x5 l  我该的是Name=彩虹岛8 h$ z- {3 n* h8 [8 `
         [小宝石全齐]ON=54F,FF/ K, \/ k: ^: B  F
   我想改成按选择键小宝石全齐的效果,已知按键内存为00F7
; _) o8 W; }- e( S8 d9 a! h
   然后就将改成$ n" M) N. G! p
   再然后改成0 _, n3 ^/ p+ C$ h' n8 \4 A
   最可耻的是最后竟然弹出这幅令我精神失常的图2 w& i9 K7 t! a$ D$ U" B
   其实我早就知道不怎么能可能成功的了,因为我不明白shinwa博客里写的 48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD 其中我不明白48 C9 D0 8D 68 4C这些机器码,有哪位会的教教小弟我,最好指出我上述修改有错的地方。万分感谢!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

签到天数: 2053 天

[LV.Master]伴坛终老

发表于 2010-11-16 23:01:52 | 显示全部楼层
从图片来看,你的4C C0 FF跳转地址好像写错了,应该写4C 00 FD。{:4_112:}( q- r( H. G+ n5 F4 c5 F7 u5 ~' ~
, F" B# x- n+ d! h  M: ]* ]2 I
还有从图片来看键值好像是存放在寄存器Y,所以C9 20应修改为C0 20。
8 T' c5 j" J3 G$ Q- o( V! S
9 r* I3 E1 h( Q5 G7 r; G# \2 y+ T% p48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD
+ q3 U4 M0 I, _1 F2 _0 n" i
' @& l' K) T. a- l9 p' h% ]机械码      机械码指令解释
. S4 H( F/ w. R/ L3 ], A- W9 {
* R; R, u% }8 G6 `4 x48              PHA            A入栈(可以理解成保存寄存器A里的数据)3 h3 T% J" }' G7 w
( P* h; {! G- b$ j& B. D
C9 20         CMP #$20  对比寄存器A与20(20是SELECT的按键值)
% d, a3 z0 q  c! f: [$ f( D) g3 S
D0 05         BNE #$05   如果不相等就跳过5个字节,相等的话继续运行,其实就是判断有没有按SELECT键.
8 E8 {4 C9 P6 T7 V7 S# R! V, _! Q' O6 W, e) O0 y. U4 T
A9 7F          LDA #$7F   把7F送入寄存器A(7F是体力满的时候的数值,这一段也可以理解成mov a,7fh)
, @  r1 R6 A4 q- c2 g9 d8 y
: U8 W& W; {8 [8 |/ ]6 r- B! H8D 1E 04     STA $041e 把寄存器A的数据写入地址041e(这个时候寄存器A的数据是7F): ^% {. L' I6 t: W% M
- e. ?9 C# v6 |+ c) H0 S! @
68               PLA             A出栈(还原寄存器A在保存的时候的数据)/ O3 X) ^, g9 _1 \2 A
3 X( p2 v$ N; I4 N. K4 @1 C& [
4C 7E FD     JMP $fd7e  跳转到地址fd7e,返回到原来的程序0 u# Q8 G% `- r: q

1 t3 a+ k3 z% `4 d4 r+ m( B$ f他博客里不是有上面机械码指令解释么?

评分

2

查看全部评分

回复

使用道具 举报

该用户从未签到

发表于 2010-11-16 23:08:59 | 显示全部楼层
{:4_121:}图太小
回复

使用道具 举报

该用户从未签到

发表于 2010-11-16 23:11:39 | 显示全部楼层
累加器进栈指令 PHA
3 X; R( w. s, J0 H' X$ s. F( G% d4 E. h0 L- d* \
   PHA是隐含寻址方式的单字节指令,操作码是 48
; Q0 W9 N& ~9 `- J( O: P0 b7 ^1 J$ u& @  m
   功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1
/ y+ G' W; r' Q+ b2 m; ~
( i8 ?- N% x  I! C& a, M( w" O累加器出栈指令 PLA
0 ~* N  k) ]5 g" w" K4 W
) a3 O. n$ {; [+ h   PLA是隐含寻址方式的单字节指令,操作码是 68& c5 z* A- u1 H5 H

/ m3 T/ h1 j, A; I$ W6 j4 K   功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A+ Q7 I" }' a6 W

- |* ~0 d& T: b, W' C% q比较指令
' q9 W+ b) k/ |( }: Z1 q1 ]( `6 N" u6 m1 Z% R( C
CMP--累加器和存储器比较
0 [$ X. m% K: C2 W4 L0 f9 R" n. _% s9 P2 y  a( z, u
CMP #$data C9 立即寻址
/ j1 f+ n7 Z7 `+ ^  z! x6 C/ M) ]* ^4 ^" h% [( e
JMP--无条件转移指令# T+ K# {# v& [7 \
4 F, o, E0 R9 y& z& o3 a
符号码格式 指令操作码 寻址方式
  |" u& w  k/ _, XJMP  $data16 4C 绝对寻址 # r' [* B0 i8 x3 d% K
- M* f; S5 e" B9 y1 i
2. 条件转移指令
- h* W! l2 L% M
2 n/ _0 l3 P5 H3 i  ~BEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续
" P; c, h7 m! Q  @& Y  }! \BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续
8 L4 b& t& N( ]' qBCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续 1 f- B$ ]  \: }- h; S9 I
BCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续 6 h, L4 A0 r0 f4 d' p8 y( {3 T$ u
BMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续
5 s! C3 M3 p2 l0 Y8 QBPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续 " r1 C  F+ ]0 F0 h
BVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
& G( f8 ]1 `- x) w2 h7 ^" _5 oBVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续 : e5 F7 N6 j; m8 g  k
$ i; w) H) u/ j, i: q9 x9 I
STA--将累加器的内容送入存储器 A--M5 ]$ R+ m* Q9 \+ v; D
STA $addr16 8D 绝对寻址
回复

使用道具 举报

该用户从未签到

发表于 2010-11-16 23:15:38 | 显示全部楼层
4# 克罗诺亚 7 l+ |9 d, L+ A, g; p! u3 w

) G  u1 |8 T. S. A: _1 N8 N! u' x: C- H4 z$ B. w' v! f1 S
看不懂{:4_106:}
回复

使用道具 举报

该用户从未签到

发表于 2010-11-16 23:19:53 | 显示全部楼层
5# 湘西小人物 : n) r  Y( h  J( ^: F
1 {3 L& g2 l# F  v: m5 C0 q
3 g- Y9 N3 u; \
LS竟然隐身。{:4_114:}
  Q, k' L- }* {* w+ A* N$ o/ G" IBCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
/ i# s& a/ k! x- p% hBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
6 i6 @$ C1 _4 C" b& f; ~
* h" d, v' Z' S) V* H) v这两条也挺好用,比较大小的。
回复

使用道具 举报

签到天数: 1229 天

[LV.10]以坛为家III

 楼主| 发表于 2010-11-17 17:55:33 | 显示全部楼层
感谢各位大哥 帮忙!!谢谢{:4_104:}
回复

使用道具 举报

签到天数: 1229 天

[LV.10]以坛为家III

 楼主| 发表于 2010-11-17 20:52:50 | 显示全部楼层
2# 疾风之狼 % i  O& [* ]) j( r* G  r

5 T) o* `# ^" _4 z" u& q; P! a% s
  i  l; \% z2 e修改成功!!谢谢狼大大
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|国治模拟精品屋 ( 沪ICP备15012945号-1 )

GMT+8, 2026-8-26 06:52

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表