EMU618社区

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

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

[复制链接]

签到天数: 1229 天

[LV.10]以坛为家III

发表于 2010-11-16 22:40:28 | 显示全部楼层 |阅读模式
今天我又看了shinwa大哥的《FC游戏按键得到某效果的修改教程》的教程,看完后也试着改一下,但很遗憾失败了,对我打击非常大,有点想不开的感觉。
1 s% f3 j# K; K  我该的是Name=彩虹岛
' z( B  U( b8 ?# _% C         [小宝石全齐]ON=54F,FF
1 @4 f1 u/ g4 W) w   我想改成按选择键小宝石全齐的效果,已知按键内存为00F7

; W3 [2 g  l& @   然后就将改成9 p; a5 _" P4 K; R# o
   再然后改成
7 m( X0 G) ]6 J1 ~+ P   最可耻的是最后竟然弹出这幅令我精神失常的图
7 ^( C: d7 y' H   其实我早就知道不怎么能可能成功的了,因为我不明白shinwa博客里写的 48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD 其中我不明白48 C9 D0 8D 68 4C这些机器码,有哪位会的教教小弟我,最好指出我上述修改有错的地方。万分感谢!!

本帖子中包含更多资源

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

x

签到天数: 1895 天

[LV.Master]伴坛终老

发表于 2010-11-16 23:01:52 | 显示全部楼层
从图片来看,你的4C C0 FF跳转地址好像写错了,应该写4C 00 FD。{:4_112:}, Z% m* Z' C% T
) x6 Z- \$ Z2 ?$ w9 h" M7 ^
还有从图片来看键值好像是存放在寄存器Y,所以C9 20应修改为C0 20。
/ Q4 e# |, {0 h1 x0 ~9 ^- q+ G. o0 b1 K* u
48 C9 20 D0 05 A9 7F 8D 1E 04  68  4C 7E FD% m7 R' R& Z  N
0 o  c) e+ T6 {* }- u
机械码      机械码指令解释
1 G+ S8 w4 e4 J  q0 B
3 l9 q. x* P3 b( u/ ]6 l" n48              PHA            A入栈(可以理解成保存寄存器A里的数据)
$ O$ e) y% A/ N  q, V
2 p/ {- U! C: j8 P) n& @C9 20         CMP #$20  对比寄存器A与20(20是SELECT的按键值)  ^: p, h: w" C
6 Z" `$ a! K% n1 u2 T) ]& |
D0 05         BNE #$05   如果不相等就跳过5个字节,相等的话继续运行,其实就是判断有没有按SELECT键.! V, i/ M5 J2 n- p* f$ O

3 m# b1 m: J& ^; A! uA9 7F          LDA #$7F   把7F送入寄存器A(7F是体力满的时候的数值,这一段也可以理解成mov a,7fh)
* f3 }/ n( o/ y
- E' m+ B; J9 _( ~4 r' }  [# q8D 1E 04     STA $041e 把寄存器A的数据写入地址041e(这个时候寄存器A的数据是7F)
! `) ?7 B" a6 K5 H% T& U7 x! P
" u% Y0 f5 E- D# _. a# H# k68               PLA             A出栈(还原寄存器A在保存的时候的数据)
4 Z0 ?) N% ?. c; \6 e9 C
$ V7 P( D7 ]7 b. F0 s2 n1 d4C 7E FD     JMP $fd7e  跳转到地址fd7e,返回到原来的程序
3 y0 a6 @1 G% H4 r, p
) D/ {! s# O5 c他博客里不是有上面机械码指令解释么?

评分

2

查看全部评分

该用户从未签到

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

该用户从未签到

发表于 2010-11-16 23:11:39 | 显示全部楼层
累加器进栈指令 PHA
2 q3 I& y* K- }4 o1 ]4 G, |4 F; [# T
# N+ e2 X1 b9 ]' i  z0 ^   PHA是隐含寻址方式的单字节指令,操作码是 48
. \) A8 j4 B8 N& u8 P9 Y7 n# `9 w# C% F5 b- O) m: `  a
   功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1
. b8 v5 z8 H7 F* ]9 [" a2 ^1 m- F: G5 R, w, e: X3 r/ l
累加器出栈指令 PLA
% Q3 p8 A; s8 s1 _, x' d0 g" E5 |) d5 U: F1 R; S
   PLA是隐含寻址方式的单字节指令,操作码是 68  g1 H# @9 z+ f
/ k; d" `3 \8 w8 B! D- K  l) `
   功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A
% |- E+ g7 E! A- ?' U# W7 p& ~7 \' ]1 t) E5 N, g
比较指令
; j. l1 k6 _' L# R3 E) @9 T
; |$ x, S8 R2 P8 SCMP--累加器和存储器比较
+ {  j. R) g* `( e) T, T7 V, j& ^2 h' s) \
CMP #$data C9 立即寻址 ! b8 K% b; f4 ^; q
3 d) y" |- W; o1 O3 n7 ]# K! {
JMP--无条件转移指令
! K2 x. v" v1 G# c& K# S# G/ [  z0 I% }( J' K; i
符号码格式 指令操作码 寻址方式 * V5 I, p. z3 ~
JMP  $data16 4C 绝对寻址 ' E- s( g7 `( y- {; d  V
8 o! _) l5 \4 S2 n. ~0 e1 ?
2. 条件转移指令' I. }# r+ f) S& v5 ]1 x: Y; C

+ k# D  L2 ]* a: q- d. dBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续
% @+ n2 Y- U9 s. k6 s5 [4 vBNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续
, ]$ j) ^  L6 `BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续 1 C1 x& F5 e! W( R! e# Y# |% j
BCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
7 @: j5 C) w/ D! _BMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 7 }& I7 x, Y9 x9 d# w7 R7 G2 S4 I
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续 - P9 W# V9 U% j3 X
BVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
  z2 V# }" f$ {$ R* L( ^BVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
# A* R7 ]9 R! T' O2 C7 k
8 M/ P3 W; Q# c1 [5 N' tSTA--将累加器的内容送入存储器 A--M. i' S; A3 R$ c) G# q7 [  S
STA $addr16 8D 绝对寻址

该用户从未签到

发表于 2010-11-16 23:15:38 | 显示全部楼层
4# 克罗诺亚 ! `  c5 i9 g2 g5 q

! P, q. }+ ?2 A9 q, {1 V  z/ [$ `. D4 z5 b( Y/ L+ [
看不懂{:4_106:}

该用户从未签到

发表于 2010-11-16 23:19:53 | 显示全部楼层
5# 湘西小人物
0 P. l% K* b# w, X/ X
* U1 P  ^' F; J# ]! k! j+ G, ~$ k' Q# m5 @
LS竟然隐身。{:4_114:} * E# O6 k" e1 [$ |- A
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
$ h  n" H7 g/ Y  o; uBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续 4 c7 [, v; @( w6 j' L. n+ I3 g; q+ p
# ^. H) l) @) Y
这两条也挺好用,比较大小的。

签到天数: 1229 天

[LV.10]以坛为家III

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

签到天数: 1229 天

[LV.10]以坛为家III

 楼主| 发表于 2010-11-17 20:52:50 | 显示全部楼层
2# 疾风之狼 # Y! N9 y  u% |

3 D) W3 q2 v3 s+ a; w- H  g+ m! n8 }% D/ T, a: ~$ y$ f
修改成功!!谢谢狼大大
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-2-25 03:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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