|
|

楼主 |
发表于 2014-7-24 00:52:40
|
显示全部楼层
本帖最后由 fanco238 于 2015-1-31 17:13 编辑
! B5 e' x' I7 X/ S疾风之狼 发表于 2014-7-23 19:44, g, R8 Y+ K x. |. j
[0662]是地址,0x13是该地址的数值0 n& O% O$ y4 Y# ~. }
$ b, Q$ a' M9 C( {4 l" U* e
DEC是自减指令,DEC $addr,X指令是以寄存器X的值作为偏移量,把$ ... " E9 e" z' [6 c6 e* U; i$ k
( @' t* b; s- d3 J- p ?先感謝 管理員 疾風之狼 的回覆 {:4_118:}
9 M: R b" g( M' t0 j+ m! |/ H2 [, t0 @! u+ Z" G
好像有些明, 又好像有些不明9 _) z' v6 \8 t9 w* ]5 p7 q3 b
於圖6 下面的 [0662] - - =0x13* T% I" y T: G2 i
大大說 [0662]是地址, 0x13是该地址的数值: H) {+ S, o) u/ n T
/ m. t$ `, J1 K+ B, k" k5 p
我先愚昧簡單的想: ! O" G( g/ ^* w
(( [0662]是地址 )) 想像是一個 掌管了 飛鏢數量 的 地方名稱 飛鏢倉庫
! l8 O! ^( M4 o- D8 B/ k7 Z(( 0x13是该地址的数值 )) 數值當然是 飛鏢倉庫內 有多少飛鏢
) M# Z m; S6 }$ b 13 其實是一個 16進制的數, 如果化成 十進制是 19, 因剛才是用了一發飛鏢按暫停的
/ w. D; a, g7 y0 I' H
$ ^9 k# R; Q6 A* ?& Q遊戲拿到飛鏢寶物始初是 20發, 用去一發 就是 19) a9 ?7 J4 v& W) ?2 e4 O% G" E
* k" G5 L- H7 C9 B2 L7 t
------------------------------------------------------------------------------------------------
0 N8 j+ g& \1 M# K. T) D: y. y. e5 m' m, U8 [6 r
跟著我們看到 圖6下面的 DEC $0662.X, 重點 是DEC, U* {) D. i. ^ p6 {: x4 }; B2 i0 O
DEC 是 自减指令, 即就是 這指令 控制了 飛鏢 是減數量, 只是把它改了 就可以- o; D3 X4 |& o1 _3 z3 \0 x, E
LDA 是 读入指令, 即就是 要改到 把 地址 讀入至 寄存器A ! ~- `, \, x0 R& T
5 S7 K- ^9 b5 i w
雖然 讀入至 寄存器A 這方面 還想不通,
5 x+ `" y$ A7 x( t總之 就是改掉 DEC 不讓它有自減的指令, 就能達成 我們不減飛鏢數的 目的了
% w, y, C; t- q0 E1 ^* s" b: K# V
8 P6 \% U! t: w+ p( |# # 最後 看來一切都是要 先 熟讀 6502汇编大奥秘, 否則就不知道 那些英文指令的作用
* @2 p5 {3 E' G+ J; t
$ l) n: ]3 k: M; [! ]8 u=================================================
2 @/ j u' r8 p$ L; V( y) C" o+ D- u. U- _; v# {4 R) _0 F5 C8 C3 L& |
說回 6502汇编大奥秘 CHM檔, 偶也開到了, 方法如下 :
0 S- `7 v* S- X( [
, w( V: _# |( \# o$ N$ z1 b一 : 檔案名稱 及 所在的路徑 要更改成 不能帶有中文字,
h5 e2 M( g8 f2 _ ~1 Z6 s7 J二 : 跟著 右按 選 以簡體模式開啟5 o) D) ^; D3 m" y
可能我的電腦繁體字版, 此CHM檔 是以簡體字去寫, 所以就需這步驟
" k" T- Y4 Y9 t
; ~2 u: u+ O! ^& m
# ^8 k5 L9 c% m2 `: u, k
5 H9 R- W3 _9 O; C B) E+ ^% o
. v% ?4 _( }: `+ a4 M- c! ]' b% V' O2 T& _ j
+ i" Z0 U0 k }$ Z5 z. J
# # 這CHM檔 可說是一本教科書, 從現在開始 才是真正 考驗一個初學者了+ N: b4 D9 @6 U! j
如果沒有 耐性 及 恆心, 或者沒有前人 的指導, 相信都很難學會呢 |
|