EMU618社区

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

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

[复制链接]

签到天数: 1380 天

[LV.10]以坛为家III

发表于 2010-11-16 22:40:28 | 显示全部楼层 |阅读模式
今天我又看了shinwa大哥的《FC游戏按键得到某效果的修改教程》的教程,看完后也试着改一下,但很遗憾失败了,对我打击非常大,有点想不开的感觉。5 t' L7 t  Y6 ?- p
  我该的是Name=彩虹岛' M% o. X4 Y8 t! H) ~
         [小宝石全齐]ON=54F,FF
. e6 o# l" g. _* U6 T# U/ a, u: t1 b   我想改成按选择键小宝石全齐的效果,已知按键内存为00F7

( C, D4 h% }% U2 W3 T7 R  k   然后就将改成1 @4 U& O( T; l9 T2 U
   再然后改成
4 [5 s% ?- p7 E; R& i) H( h   最可耻的是最后竟然弹出这幅令我精神失常的图
' T$ u+ t  @7 x$ n4 c& m   其实我早就知道不怎么能可能成功的了,因为我不明白shinwa博客里写的 48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD 其中我不明白48 C9 D0 8D 68 4C这些机器码,有哪位会的教教小弟我,最好指出我上述修改有错的地方。万分感谢!!

本帖子中包含更多资源

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

x

签到天数: 2049 天

[LV.Master]伴坛终老

发表于 2010-11-16 23:01:52 | 显示全部楼层
从图片来看,你的4C C0 FF跳转地址好像写错了,应该写4C 00 FD。{:4_112:}2 a: l" K; A( I! V: A

% A0 P9 U. s" I0 Z" |; E还有从图片来看键值好像是存放在寄存器Y,所以C9 20应修改为C0 20。$ r9 l: f1 S6 \) q: m2 Q
6 {9 |8 z# v( X  n  J# F# \
48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD4 o/ e1 x# M, Q( l1 j" n
, d6 y! F) P* b3 {" {) g7 t
机械码      机械码指令解释# A7 g6 B0 \! j/ T& L) ^4 O4 s" T: q

0 y! {1 E8 W: h, P, i" e48              PHA            A入栈(可以理解成保存寄存器A里的数据)
0 f. `# Y/ ]5 @, x. a8 r0 v3 }% t/ ^, W7 x# w0 ]& i' R. w
C9 20         CMP #$20  对比寄存器A与20(20是SELECT的按键值)0 Y* ?, I0 T! [3 [( U8 N
4 W5 f3 V2 A0 e% Y# k+ a9 R
D0 05         BNE #$05   如果不相等就跳过5个字节,相等的话继续运行,其实就是判断有没有按SELECT键.
- u- u+ R2 ]: \& Y/ O0 S1 z3 }7 F, `: N% d( V
A9 7F          LDA #$7F   把7F送入寄存器A(7F是体力满的时候的数值,这一段也可以理解成mov a,7fh)
) I( q0 x/ d8 |$ w3 L2 z: \5 U6 S, J7 y1 {0 M0 i
8D 1E 04     STA $041e 把寄存器A的数据写入地址041e(这个时候寄存器A的数据是7F)6 U2 \! f* j/ r' D& @/ q: e  o
6 q' a" g+ B" ^' \0 j9 b
68               PLA             A出栈(还原寄存器A在保存的时候的数据)
& o8 f) t, Y( j! t; c: @, d+ k8 x1 m8 G7 n
4C 7E FD     JMP $fd7e  跳转到地址fd7e,返回到原来的程序) ~5 p, c# G5 A. p8 `5 _8 d
/ p- S& P' K- k0 Y4 {, V
他博客里不是有上面机械码指令解释么?

评分

2

查看全部评分

该用户从未签到

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

该用户从未签到

发表于 2010-11-16 23:11:39 | 显示全部楼层
累加器进栈指令 PHA
! K5 Z" G* E8 a' C% }: c7 K; g, M" t/ r& O; |
   PHA是隐含寻址方式的单字节指令,操作码是 48( J6 D' R- [( \" f

! o) i6 z8 k: u8 O+ h+ b% [   功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减10 K' E/ m  [4 K3 ~

+ i  A* k/ x3 X2 S; _累加器出栈指令 PLA/ ?0 i5 g2 _( d0 M/ {' m" }

+ O$ D+ {. O- _' |- A   PLA是隐含寻址方式的单字节指令,操作码是 68, e7 X( ]/ \, p0 S
" d4 c3 m& ^6 ]+ y+ q1 S
   功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A  Y" s' D, C: `# {( f
2 N" @% v4 ~1 b! G. w' r) F
比较指令
+ K' v- C0 Z, b/ F9 I
7 R% i  j: P5 A% V9 @# HCMP--累加器和存储器比较
: T+ G$ \" X6 J# P& B8 W" j+ ]( r/ N
CMP #$data C9 立即寻址
2 d" h; {/ `, w) \, E% i) L9 B' H( o+ g
JMP--无条件转移指令
+ ^  P! G. j" A5 T/ A( m9 `6 Y1 e2 \- X0 \8 B- M
符号码格式 指令操作码 寻址方式
+ R' K: |! I) C5 {2 YJMP  $data16 4C 绝对寻址 ! r' A4 t: e8 Y" |& M6 ~; A
8 S& t, n8 d2 M  Z. {( U
2. 条件转移指令
( E1 A, W+ p1 w, `
" b" O% B& o! y) OBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续
  u, B  z) l6 K/ cBNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续 % s5 G/ B$ A" O* }1 J" X/ I- Z: f4 Z
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续 6 w- v2 \2 ?! a) u+ Y
BCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
/ z8 e5 E. `' G, YBMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 : }! _# |1 {2 S
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续
+ Z' J2 b  d% p4 W- eBVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续 3 Y2 w- f0 j/ m* M8 d! ^
BVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续 0 x" B- L9 N$ b, g1 J$ ~3 R* M1 u5 p

" {. v3 E2 M( b3 LSTA--将累加器的内容送入存储器 A--M" k  C  N6 T. M. o1 u: [
STA $addr16 8D 绝对寻址

该用户从未签到

发表于 2010-11-16 23:15:38 | 显示全部楼层
4# 克罗诺亚 * }) s) X9 N9 @8 ]

3 O& ?9 S9 W4 ~, l8 U1 N% Z5 X2 ]' T5 ]" B1 ^! z+ Y1 E. k$ W
看不懂{:4_106:}

该用户从未签到

发表于 2010-11-16 23:19:53 | 显示全部楼层
5# 湘西小人物
( S6 d+ p& O7 N% n" M
' E& J, N$ s- I, `5 z
( ~# b$ r  X2 `4 x* r' R% I% P  xLS竟然隐身。{:4_114:} 7 g' B. j7 _3 U+ \
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
( t4 Z" n% l$ {9 f+ aBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
( z3 n, a& m( C; O
* J+ ]0 Z+ _' p$ d5 i# n4 h这两条也挺好用,比较大小的。

签到天数: 1380 天

[LV.10]以坛为家III

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

签到天数: 1380 天

[LV.10]以坛为家III

 楼主| 发表于 2010-11-17 20:52:50 | 显示全部楼层
2# 疾风之狼 + F( |$ e' b) c
* k& U9 r9 R; |8 |

) g4 @6 T# H/ [- A修改成功!!谢谢狼大大
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-8-24 11:25 , Processed in 1.089843 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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