设为首页收藏本站

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

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

[复制链接]

签到天数: 1229 天

[LV.10]以坛为家III

发表于 2010-11-16 22:40:28 | 显示全部楼层 |阅读模式
今天我又看了shinwa大哥的《FC游戏按键得到某效果的修改教程》的教程,看完后也试着改一下,但很遗憾失败了,对我打击非常大,有点想不开的感觉。
; D' s5 h7 u5 ~+ y  R% b# ^2 c  我该的是Name=彩虹岛
* b8 U6 `8 b% @" X         [小宝石全齐]ON=54F,FF4 B- d$ @, K* ?% Z, D
   我想改成按选择键小宝石全齐的效果,已知按键内存为00F7
' ~2 D) R5 w* y4 k+ u/ v4 f
   然后就将改成1 A' ^. `) _# U( q) d
   再然后改成
* l3 S9 W3 M4 [2 u: s" E; K   最可耻的是最后竟然弹出这幅令我精神失常的图
, l1 R2 a* ]/ L4 U) a0 `" p. D  {   其实我早就知道不怎么能可能成功的了,因为我不明白shinwa博客里写的 48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD 其中我不明白48 C9 D0 8D 68 4C这些机器码,有哪位会的教教小弟我,最好指出我上述修改有错的地方。万分感谢!!

本帖子中包含更多资源

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

×

签到天数: 2032 天

[LV.Master]伴坛终老

发表于 2010-11-16 23:01:52 | 显示全部楼层
从图片来看,你的4C C0 FF跳转地址好像写错了,应该写4C 00 FD。{:4_112:}: k3 Q: g: N- v0 m7 k. @
1 ~4 d( k7 k+ M3 s4 _7 u
还有从图片来看键值好像是存放在寄存器Y,所以C9 20应修改为C0 20。/ ^$ B5 i0 ~6 E7 t- Q% b' z  _* v

) t3 W2 r% t( j- b$ G6 N. o. j( }48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD# M0 F+ ]! j" J! A

+ k- ?% S+ w+ E& C6 j2 E机械码      机械码指令解释
" ]; i" z) O) z7 D. L* |& Z
# S# @5 `1 ?5 A- n# N+ p48              PHA            A入栈(可以理解成保存寄存器A里的数据)
. H( E: L. j# P/ t- r& h! D
4 w9 R& B; ]( e' w6 i5 [& JC9 20         CMP #$20  对比寄存器A与20(20是SELECT的按键值)! ?/ P  ^1 @% F2 E
: F: n% `" P7 _4 z- w
D0 05         BNE #$05   如果不相等就跳过5个字节,相等的话继续运行,其实就是判断有没有按SELECT键.- _4 S4 {& ]% r- c- Q1 \
/ T( k  J4 t3 k/ C9 g- L- b8 V
A9 7F          LDA #$7F   把7F送入寄存器A(7F是体力满的时候的数值,这一段也可以理解成mov a,7fh)2 O9 J" R- _/ v3 L1 N- H

4 ^5 b; C  `0 P6 p8 x' g# J  M# O* ?8D 1E 04     STA $041e 把寄存器A的数据写入地址041e(这个时候寄存器A的数据是7F)7 I0 N1 H1 j2 f1 S3 `5 D- L% Q6 Q

1 p9 e* J/ h4 G9 Q" ~( ~68               PLA             A出栈(还原寄存器A在保存的时候的数据)/ q) |( ?4 ]+ h# W3 L

3 M+ z0 y5 Z% G0 f! U! k4C 7E FD     JMP $fd7e  跳转到地址fd7e,返回到原来的程序
; v2 p) o0 t* _. z( s3 X8 B: `: u: B/ z1 P6 k' O. u
他博客里不是有上面机械码指令解释么?

评分

2

查看全部评分

回复

使用道具 举报

该用户从未签到

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

使用道具 举报

该用户从未签到

发表于 2010-11-16 23:11:39 | 显示全部楼层
累加器进栈指令 PHA
- J* Y) A7 _* Y8 @0 G6 n/ J
# o+ k( m/ Q: \2 [9 X   PHA是隐含寻址方式的单字节指令,操作码是 48
8 `# M6 Z6 E) D- b; ~- D3 K! r5 T1 {+ ?
   功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1
5 F# t3 ?: L+ Z! U! E8 k' \
$ ~* r8 N) }$ l4 w7 o# Q累加器出栈指令 PLA
0 i% H5 x- h: `* u3 Z% Q, x( W/ C3 Y3 W( d3 M
   PLA是隐含寻址方式的单字节指令,操作码是 68& M; s2 {1 s, i* B  S
& D0 y' R" d% F% M1 a! J# Y
   功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A
; k" }4 h* r* q4 s/ g3 \( m4 o6 y
  d/ h: b. e! k2 \4 I比较指令, Q' n( v) @9 y/ ~; \

) c/ D  n; N  \' g8 m( m0 wCMP--累加器和存储器比较
( M1 Z% d+ \6 V* p0 ?9 H7 y
1 D: o9 j9 l! G7 V: C8 n" Q* aCMP #$data C9 立即寻址
4 p+ o- _; L7 E) |/ W
  v9 }* v6 z) I: A) ^- K3 {( u8 GJMP--无条件转移指令
& W7 k7 j9 a/ e6 e1 Y- _# C$ _2 j5 A1 S
符号码格式 指令操作码 寻址方式
$ D3 d/ J# t3 a+ X6 E" nJMP  $data16 4C 绝对寻址
$ h) `. O& @2 j$ z+ R- L+ x8 f3 `
: c2 `, e" Z, D6 J2. 条件转移指令
% Z5 u( i" W$ Y4 V; U1 x
$ c+ k6 ?: |8 s- y" C5 `3 X. _! MBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续 # z: `: K7 \0 v
BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续 " Z0 h- Z5 T( s
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
' x4 r' f* b" z: X* @- MBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
# Q* s. J! H3 @; x& A1 UBMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 3 H; L6 w7 T( v3 \, {- G9 a+ z% q- L
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续 # N4 f1 D* K/ H" y1 V# J# i5 l
BVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
" T) G" n  |- x! GBVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
7 \$ F1 q3 T# l% y8 S
+ f# b5 z/ M. G& p! V9 ^8 I* gSTA--将累加器的内容送入存储器 A--M
" I% a  ]- ^; ]2 m  x+ v7 tSTA $addr16 8D 绝对寻址
回复

使用道具 举报

该用户从未签到

发表于 2010-11-16 23:15:38 | 显示全部楼层
4# 克罗诺亚
) o% j% c! n* ?0 G6 S+ H5 e( g& g% e$ z/ f" e+ J' R

7 _: Z- p+ N, g+ K/ I. i& d( b看不懂{:4_106:}
回复

使用道具 举报

该用户从未签到

发表于 2010-11-16 23:19:53 | 显示全部楼层
5# 湘西小人物 6 Y+ l/ ]' {2 A1 Z

0 o% x$ ^2 P9 |+ u. U$ ^3 {* P5 R$ l. z$ y8 ^
LS竟然隐身。{:4_114:} 4 B, W/ @. O) W  h5 L3 J5 t1 _2 {
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续 ; Y' E' P' }+ z% r* V
BCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续 6 x$ l9 w5 a7 `$ V; N
, m& w' I! ^4 ^( C% f3 y4 L
这两条也挺好用,比较大小的。
回复

使用道具 举报

签到天数: 1229 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 1229 天

[LV.10]以坛为家III

 楼主| 发表于 2010-11-17 20:52:50 | 显示全部楼层
2# 疾风之狼 , b7 `% \& Z: p! Q* ^. T$ h8 o
0 g! _5 n( U( N. x/ x

5 Q& N  d! m2 ?修改成功!!谢谢狼大大
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-8-5 13:13

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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