EMU618社区

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

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

[复制链接]

签到天数: 1413 天

[LV.10]以坛为家III

发表于 2010-11-16 22:40:28 | 显示全部楼层 |阅读模式
今天我又看了shinwa大哥的《FC游戏按键得到某效果的修改教程》的教程,看完后也试着改一下,但很遗憾失败了,对我打击非常大,有点想不开的感觉。( s4 v0 D: D- y! R4 h  b
  我该的是Name=彩虹岛' n% Z. e6 j+ ]- B( Q6 r8 f7 @: Q
         [小宝石全齐]ON=54F,FF
8 H0 H% \# b; ~1 W! f; B   我想改成按选择键小宝石全齐的效果,已知按键内存为00F7

1 U6 P$ [0 ^) \   然后就将改成3 ~( \  ~3 H; n% f" [4 l* B
   再然后改成
! B! N  i$ S0 R( N7 F" ?   最可耻的是最后竟然弹出这幅令我精神失常的图# Y! b% @8 m1 o' ~( J/ K
   其实我早就知道不怎么能可能成功的了,因为我不明白shinwa博客里写的 48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD 其中我不明白48 C9 D0 8D 68 4C这些机器码,有哪位会的教教小弟我,最好指出我上述修改有错的地方。万分感谢!!

本帖子中包含更多资源

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

x

签到天数: 2206 天

[LV.Master]伴坛终老

发表于 2010-11-16 23:01:52 | 显示全部楼层
从图片来看,你的4C C0 FF跳转地址好像写错了,应该写4C 00 FD。{:4_112:}
( {! I4 I1 I+ M7 C! N" U' e9 c
4 c( h- N3 v! y; N9 X还有从图片来看键值好像是存放在寄存器Y,所以C9 20应修改为C0 20。
2 V9 H8 f7 g) [, O! y" F
4 O: B8 X# S; P. u48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD
+ e* c. _4 M; D- `$ y
5 \- T6 k9 s0 {% S4 @机械码      机械码指令解释
+ R# f; R6 C; `& X# Y" o& m  c; \: @
48              PHA            A入栈(可以理解成保存寄存器A里的数据)5 r* p5 H8 O/ S: x$ B7 w
: W9 o0 Z! O- W) Z
C9 20         CMP #$20  对比寄存器A与20(20是SELECT的按键值)
/ D& @/ I5 `! n% |% L& V
4 g3 B) t/ H% z' T1 u3 ^7 K; I6 D8 _D0 05         BNE #$05   如果不相等就跳过5个字节,相等的话继续运行,其实就是判断有没有按SELECT键.2 a' [! V- m  k; N( F+ U
1 W3 ]+ `, Q* Y/ C' |. |1 X4 D
A9 7F          LDA #$7F   把7F送入寄存器A(7F是体力满的时候的数值,这一段也可以理解成mov a,7fh)
3 d* O# I4 s; A' Y7 ~/ [% A& H1 x6 w+ Q$ b0 u" f" y. u( w& i5 b7 p
8D 1E 04     STA $041e 把寄存器A的数据写入地址041e(这个时候寄存器A的数据是7F)
6 ^2 I  B5 F& ~9 w, |8 V8 s* ]+ {/ ?0 V. \. E; O
68               PLA             A出栈(还原寄存器A在保存的时候的数据); q* g# N$ L* M( E/ o# J5 o
6 ~6 e$ d" b8 f( x
4C 7E FD     JMP $fd7e  跳转到地址fd7e,返回到原来的程序6 _* v6 u/ b/ o& a& {0 L; `3 X
" t0 ?' w1 W1 j: }. B+ H! B7 |
他博客里不是有上面机械码指令解释么?

评分

2

查看全部评分

该用户从未签到

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

该用户从未签到

发表于 2010-11-16 23:11:39 | 显示全部楼层
累加器进栈指令 PHA
& \9 N2 `, ?( S
- h: e6 I+ b8 A) K9 U8 n& \3 r   PHA是隐含寻址方式的单字节指令,操作码是 48
* A7 e$ Y8 E* V' _" `  l8 b! d8 E' e. L7 c9 j* M' p
   功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1. F# A, S& p8 b1 p! L

7 m4 {4 w7 c) e累加器出栈指令 PLA: P% G9 u! a, p2 G; R6 ~
; l% S% i( p7 Q4 D
   PLA是隐含寻址方式的单字节指令,操作码是 68% k& U! ?9 x% b# O* |$ x
4 \/ G- s- X) Z+ r' t) I
   功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A& \( R$ q" K4 ~* m1 Y$ k- h
; J: B1 a' G$ t$ h
比较指令# e# }8 a  `' b' b; N

% c. E! T0 R1 o# H& T) aCMP--累加器和存储器比较
/ J! l3 m+ S; {# }: ]
$ i" D# e0 a7 ^1 I4 q1 }, B7 U9 GCMP #$data C9 立即寻址 7 S( r. [. V% F# D
/ H" L/ F" g: b, P
JMP--无条件转移指令
' \2 W, n0 L* n$ l  x; d0 m+ M5 E3 G1 E7 s( }
符号码格式 指令操作码 寻址方式 8 s% D* n1 R6 N& c
JMP  $data16 4C 绝对寻址 1 ]  o: Q1 [1 S0 L4 H

' b) z* a- u3 X8 @- Z& }  D5 w2. 条件转移指令8 T, e: Y' Y; t

. z6 z- v( n! k* k1 b+ ZBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续 + s2 I7 n; W# y- o; f0 y
BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续
3 t0 r: K5 w& k6 t! y8 \BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
  d  q" [$ g( ?( cBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
6 n; z- }8 P: V) g& O  BBMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续
/ m2 Y2 @5 Z4 F4 HBPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续
! s5 A4 r' }4 WBVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
  q3 o$ E/ _  Y$ GBVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
. v; p8 P6 o6 J- d7 G
- p7 b  s- W% K$ j# I+ G  VSTA--将累加器的内容送入存储器 A--M9 ^( x0 y; f2 h' F
STA $addr16 8D 绝对寻址

该用户从未签到

发表于 2010-11-16 23:15:38 | 显示全部楼层
4# 克罗诺亚
* c. }; ]( H  h; S% V, ?4 E* T7 U' c; J
' L9 N) ^2 Q9 e% A# P# Q# L
看不懂{:4_106:}

该用户从未签到

发表于 2010-11-16 23:19:53 | 显示全部楼层
5# 湘西小人物 - L: Y) |' t/ ~
) A2 h/ `; i( M! B0 v$ v0 n
0 q& J2 ^* ]$ D3 ]: K
LS竟然隐身。{:4_114:} # X4 O! R$ U0 h
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
: j/ u; Y& e5 C# d, n; W+ yBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
$ Y* j8 @+ Q" R% I6 I* ]! Y  y, C( p
6 R# `3 Y( e/ x; U, C# K这两条也挺好用,比较大小的。

签到天数: 1413 天

[LV.10]以坛为家III

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

签到天数: 1413 天

[LV.10]以坛为家III

 楼主| 发表于 2010-11-17 20:52:50 | 显示全部楼层
2# 疾风之狼 6 U, w: l  F0 ^# P, _
( ?) Q; j7 b- ]

( }. Q9 p: X2 {$ |  S修改成功!!谢谢狼大大
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-29 02:05 , Processed in 1.114258 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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