EMU618社区

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

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

[复制链接]

签到天数: 1386 天

[LV.10]以坛为家III

发表于 2010-11-16 22:40:28 | 显示全部楼层 |阅读模式
今天我又看了shinwa大哥的《FC游戏按键得到某效果的修改教程》的教程,看完后也试着改一下,但很遗憾失败了,对我打击非常大,有点想不开的感觉。* s! I7 |* p* E5 o" S
  我该的是Name=彩虹岛
- i. H4 s( M2 y: L& d! g: y% h; o         [小宝石全齐]ON=54F,FF* ?" a+ a, w, @* a. s9 v/ u
   我想改成按选择键小宝石全齐的效果,已知按键内存为00F7
# R( @7 P& V6 f6 k8 p; E
   然后就将改成2 H  b% m. |# \8 a- e) b' q5 T" Z5 U
   再然后改成( |3 m! ^9 B0 s; {' _6 u
   最可耻的是最后竟然弹出这幅令我精神失常的图; h9 j* ^7 v/ ~" r( @( O2 ]# A
   其实我早就知道不怎么能可能成功的了,因为我不明白shinwa博客里写的 48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD 其中我不明白48 C9 D0 8D 68 4C这些机器码,有哪位会的教教小弟我,最好指出我上述修改有错的地方。万分感谢!!

本帖子中包含更多资源

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

x

签到天数: 2074 天

[LV.Master]伴坛终老

发表于 2010-11-16 23:01:52 | 显示全部楼层
从图片来看,你的4C C0 FF跳转地址好像写错了,应该写4C 00 FD。{:4_112:}6 Z1 i  l  ~7 M5 Y# X
/ P+ p( ~2 o. f7 ^' S' C
还有从图片来看键值好像是存放在寄存器Y,所以C9 20应修改为C0 20。
. A$ m/ o( o+ ~+ G0 k
6 p. l4 l0 g  k( ~: Q- x48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD
4 O, P8 E$ R& f2 u7 V5 g9 a
+ U6 H1 j% @' X: e' u机械码      机械码指令解释
$ [+ T( q" g7 _  w8 j' V8 L9 C! u5 A
# u" {2 G1 O" p48              PHA            A入栈(可以理解成保存寄存器A里的数据)
. f9 M3 M- K2 o5 A2 I; A
8 }. N' W7 g& ]' [C9 20         CMP #$20  对比寄存器A与20(20是SELECT的按键值)" v( P9 Z. b% V4 ~# Z2 I" Z, h
; M) b- H9 i' S1 F
D0 05         BNE #$05   如果不相等就跳过5个字节,相等的话继续运行,其实就是判断有没有按SELECT键.; H5 x+ i2 y0 X, A. ^0 X7 V; e2 Q
7 Z6 Z( i: j' S" ?
A9 7F          LDA #$7F   把7F送入寄存器A(7F是体力满的时候的数值,这一段也可以理解成mov a,7fh)$ [' `$ n; R9 `% ~. ~% ]

# F0 _8 s- u- t, Y( m8D 1E 04     STA $041e 把寄存器A的数据写入地址041e(这个时候寄存器A的数据是7F)
& _" t7 q% Q( R5 J( x- ?9 q/ W. C8 c/ m+ A/ g% Q
68               PLA             A出栈(还原寄存器A在保存的时候的数据)9 \$ l2 i0 O% M( P( A6 r
* {0 a5 g* M# ?  f! }0 M1 I% }) c3 I
4C 7E FD     JMP $fd7e  跳转到地址fd7e,返回到原来的程序
) ~3 \( F$ ]7 P% J3 ]8 O
7 \' `' {% w! f他博客里不是有上面机械码指令解释么?

评分

2

查看全部评分

该用户从未签到

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

该用户从未签到

发表于 2010-11-16 23:11:39 | 显示全部楼层
累加器进栈指令 PHA
5 U. A4 z9 b5 f# z. W5 u2 z* K" o/ L# I; H. {
   PHA是隐含寻址方式的单字节指令,操作码是 48
8 O4 }5 X' x, b2 v" R; `$ r6 f1 k8 C% T3 {* y
   功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1
" T, z. k+ r# H# ~$ D" S7 z& x
% c. N3 h2 K9 }0 s累加器出栈指令 PLA
+ _2 \7 l5 \! i0 B9 F; D
3 R- P" M+ O7 I8 Y8 b! M7 S   PLA是隐含寻址方式的单字节指令,操作码是 682 i  d6 Y1 w- p, Y4 n
4 w% J- Y& H, |' s2 N
   功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A! I8 T" D: ]: h% V. M9 X& A
' ^: Y& J! M, t! J
比较指令% G1 @2 c. `4 K

. r8 T9 h+ X! HCMP--累加器和存储器比较
7 x  O! U+ F* s' X% T+ ?
2 O- J6 W* R% W- pCMP #$data C9 立即寻址 9 K9 N& B9 A2 {2 H, C( z$ W

2 e1 R3 X, t% @7 N3 k+ }! |# ^JMP--无条件转移指令' U8 l4 j( Y2 v  j

9 I2 U* Q* B. x5 C* U2 {8 T符号码格式 指令操作码 寻址方式
' ?) w2 }* J% Z/ ~4 Z5 B% [! ^JMP  $data16 4C 绝对寻址 1 b; u1 \2 @& Z) S, ^- v! [

2 K* k! s8 p3 |, J3 \" }  r2. 条件转移指令4 H4 O; j) W0 n

; e/ y1 w2 X3 \1 T5 d) R6 FBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续 . A  H7 @$ D/ }* P
BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续 " F$ R, B( b% U% A4 E! ]7 E6 ?
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
! G- K  f3 R0 a0 F0 p/ q8 \BCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
. q6 K1 p& f$ q7 ^/ O3 wBMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续
' p# ~6 O& B3 Z) |! l3 t. HBPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续
& n2 Q* N5 v' T; b- ~! f+ mBVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
0 D7 F; q" {) XBVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
$ A/ L' x# P) I+ A& A7 K) |; l! ?9 q2 Z) m
STA--将累加器的内容送入存储器 A--M
' e" F% N: C  J7 q" A+ SSTA $addr16 8D 绝对寻址

该用户从未签到

发表于 2010-11-16 23:15:38 | 显示全部楼层
4# 克罗诺亚 * g; s/ Q+ g6 T$ [! m
! U$ m$ V6 Q- D5 i/ q
3 [$ R2 Y* ^" s3 O4 }" N& |  d
看不懂{:4_106:}

该用户从未签到

发表于 2010-11-16 23:19:53 | 显示全部楼层
5# 湘西小人物
1 i2 d+ e$ C0 g5 G% ^$ t$ }3 A- F. I# N: }* a; }

+ E9 ^: g& m( f* kLS竟然隐身。{:4_114:} 2 s7 H: w, [) ~+ {: R3 T
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
; u( |! Q, W: I- GBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续 + k* U/ i9 U6 N: n$ x/ P" z- `& ~' x. A

) `/ Y3 A. d9 R4 g/ {5 X1 T( m这两条也挺好用,比较大小的。

签到天数: 1386 天

[LV.10]以坛为家III

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

签到天数: 1386 天

[LV.10]以坛为家III

 楼主| 发表于 2010-11-17 20:52:50 | 显示全部楼层
2# 疾风之狼 $ N. R8 {0 r1 R7 ]

. G* j: K3 g4 s6 A; a2 K6 R, s0 L
修改成功!!谢谢狼大大
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-9-18 20:09 , Processed in 1.059571 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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